<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>结算管理</title>
</head>
<body>
<style>
    .m15 .form-inline .form-group {
        margin-right: 15px;
    }
</style>
<nav class="breadcrumb"><i class="Hui-iconfont">&#xe67f;</i> 首页
    <span class="c-gray en">&gt;</span>
    财务管理
    <span class="c-gray en">&gt;</span>
    结算管理
</nav>
<div class="page-container">
    <div class="row mt-20">
        <div id="platformSettlementFormToolBar">
            <form class="form-inline" id="platformSettlementForm">
                <div class="form-group">
                    <label class="control-label" title="">
                        商户名称：
                    </label>
                    <input type="text" class="form-control" placeholder="" name="bizId" id="settlement-bizId">
                </div>
                <span onclick="platformFinanceSettlement.searchAction();" class="btn btn-default">查询 <i
                        class="glyphicon glyphicon-search"></i></span>&nbsp;&nbsp;&nbsp;&nbsp;
                <a href="javascript:;" class="btn btn-primary radius" onclick="platformFinanceSettlement.settle_accountsAll()">批量结算</a>
            </form>
        </div>
        <div class="col-xs-12">
            <table id="platform-tableSettlement" class="table table-bordered table-striped text-center">
            </table>
        </div>
    </div>
</div>
<script>
    //财务流水
    var platformFinanceSettlement = {
        init: function () {
            let _this = this;
            //商户名称
            $.ajax({
                type: "GET",
                url: "biz/showAllBizName",
                dataType: "json",
                success: function (data) {
                    if(data.state){
                        $("#settlement-bizId").select2({
                            data: data.data,
                            placeholder: '请选择',
                            allowClear: true
                        })
                    }else {
                        alert("error");
                    }
                },
                error: function () {
                    alert("error");
                }
            });

            //商户财务流水展示所有
            $('#platform-tableSettlement').bootstrapTable({
                url: 'biz/showAllBizAcct',     //请求后台的URL（*）
                method: 'get',
                toolbar: '#platformSettlementFormToolBar',
                striped: true,                      //是否显示行间隔色
                cache: false,                       //是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
                pagination: true,                   //是否显示分页（*）
                sortable: false,                     //是否启用排序
                sortOrder: "asc",                   //排序方式
                sidePagination: "client",           //分页方式：client客户端分页，server服务端分页（*）
                pageNumber: 1,                       //初始化加载第一页，默认第一页
                pageSize: 10,                       //每页的记录行数（*）
                pageList: [10, 25, 50, 100],        //可供选择的每页的行数（*）
                //search: true,                       //是否显示表格搜索，此搜索是客户端搜索，不会进服务端，所以，个人感觉意义不大
                strictSearch: true,
                showColumns: true,                  //是否显示所有的列
                showRefresh: true,                  //是否显示刷新按钮
                minimumCountColumns: 2,             //最少允许的列数
                clickToSelect: true,                //是否启用点击选中行
                // height: 500,                        //行高，如果没有设置height属性，表格自动根据记录条数觉得表格高度
                uniqueId: "ID",                     //每一行的唯一标识，一般为主键列
                showToggle: true,                    //是否显示详细视图和列表视图的切换按钮
                cardView: false,                    //是否显示详细视图
                detailView: false,                   //是否显示父子表
                columns: [
                    {
                        checkbox: true
                    }, {
                        field: 'acctId',
                        title: '账户id',
                        visible: false
                    }, {
                        field: 'bizName',
                        title: '商户名称'
                    }, {
                        field: 'restAmount',
                        title: '账户余额',
                        formatter: function (value, row, index) {
                            return value/100;
                        }
                    }, {
                        field: 'addTime',
                        title: '创建时间'
                    }, {
                        field: 'updateTime',
                        title: '最后操作时间'
                    }, {
                        field: 'addTime',
                        title: '操作',
                        formatter : function (value, row,index) {
                            return  `<a class="btn btn-info btn-sm" onclick="platformFinanceSettlement.settle_accounts('${row.acctId}')"  >结算 </a>`
                        }
                    }
                ]
            });
        },
        //查询
        searchAction: function () {
            $.ajax({
                type: "get",
                url: "biz/showAllBizAcct",
                data: $("#platformSettlementForm").serialize(),
                dataType: "json",
                success: function (json) {
                    $("#platform-tableSettlement").bootstrapTable('load', json);
                },
                error: function () {
                    alert("error");
                }
            });
        },
        //点击单个结算按钮
        settle_accounts : function  (index){
            layer.confirm('确认要结算吗？',
                {
                    btn: ['确定','取消']
                },
                function(){
                    //确认结算
                    $.ajax({
                        type: "GET",
                        url: "biz/settlementBizAcct?acctId="+index,
                        dataType: "json",
                        success: function (data) {
                            if(data.state){
                                layer.msg(data.message, {icon: 1});
                                $("#platform-tableSettlement").bootstrapTable("refresh");
                            }else {
                                layer.msg(data.message, {icon: 2});
                            }
                        },
                        error: function () {
                            alert("error");
                        }
                    });

                },
                function(){
                    layer.msg('已取消！', {icon: 1});
                    return false;
                }
            );

        },
        //批量结算
        settle_accountsAll : function () {
            layer.confirm('确认要全部结算吗？',
                {
                    btn: ['确定','取消']
                },
                function(){
                    //确认结算
                    //获取所有被选中的记录
                    var rows = $("#platform-tableSettlement").bootstrapTable('getSelections');
                    if (rows.length== 0) {
                        layer.alert("请先选择要结算的记录!");
                        return;
                    }
                    var ids = '';
                    for (var i = 0; i < rows.length; i++) {
                        ids += rows[i]['acctId'] + ",";
                    }
                    ids = ids.substring(0, ids.length - 1);
                    console.log(ids);
                    //确认批量结算
                    $.ajax({
                        type: "GET",
                        url: "biz/settlementAllBizAcct?listIds="+ids,
                        dataType: "json",
                        success: function (data) {
                            if(data.state){
                                layer.msg(data.message, {icon: 1});
                                $("#platform-tableSettlement").bootstrapTable("refresh");
                            }else {
                                layer.msg(data.message, {icon: 2});
                            }
                        },
                        error: function () {
                            alert("error");
                        }
                    });
                },
                function(){
                    layer.msg('已取消！', {icon: 1});
                    return false;
                }
            );
        },
    };

    platformFinanceSettlement.init();
</script>
</body>
</html>